package com.hualude.roadsign.service;

import com.hualude.roadsign.dto.DTRequestDto;
import com.hualude.roadsign.dto.DTResponseDto;

import java.util.List;

/**
 * Created by pjn on 2017/9/20.
 */
public interface CoverLocationCountService {

    /**
     * @Description: 位置统计datatable
     * @Author: pan-jianan
     * @Date: 2017/9/20 14:14
     */
    public DTResponseDto getCover4DT(Integer userId, Integer orgId, DTRequestDto dtRequestDto) throws Exception;

    /**
     * @Description: 得到表中的全部省份
     * @Author: pan-jianan
     * @Date: 2017/9/20 14:12
     */
    public List<String> getProvinceName(Integer userId, Integer orgId) throws Exception;

    /**
     * @Description: 按照省份得到城市
     * @Author: pan-jianan
     * @Date: 2017/9/20 14:12
     */
    public List<String> getCityName(Integer userId, Integer orgId, String provinceName) throws Exception;


    /**
     * @Description: 获取表中的城市下所有区域名
     * @Author: pan-jianan
     * @Date: 2017/9/20 14:12
     */
    public List<String> getAllAreaName(Integer userId, Integer orgId, String provinceName, String cityName) throws Exception;


    /**
     * @Description: 获取表中的相关的所有道路名 --联动道路名选择框
     * @Author: pan-jianan
     * @Date: 2017/9/20 14:13
     */
    public List<String> getAllRoadName(String provinceName, String cityName, String areaName, Integer userId, Integer orgId) throws Exception;

    /**
     * @Description: 获取起始路段
     * @Author: pan-jianan
     * @Date: 2017/9/20 14:13
     */
    public List<String> getStartRoadName(Integer userId, Integer orgId, String provinceName, String cityName,
                                         String areaName, String endRoadName, String roadName) throws Exception;

    /**
     * @Description: 根据起始路段获取终止路段
     * @Author: pan-jianan
     * @Date: 2017/9/20 14:13
     */
    public List<String> getEndRoadName(Integer userId, Integer orgId, String startRoad, String provinceName, String cityName,
                                       String areaName, String roadName) throws Exception;


    public List<Integer> getCoverTypeCounts(Integer userId, Integer orgId, String time, String province, String city, String area, String road) throws Exception;

}
